1、二叉树和为一值的二叉树
思想：dfs，当前做的就是target-root->val;需要注意的是最后需要修建
class Solution {
public:
    vector<vector<int>> vv;
    vector<int> v;
    void dfs(TreeNode*& root, int target)
    {
        if(root==nullptr)
            return ;
        target-=root->val;
        v.push_back(root->val);
        if(target==0&&root->left==nullptr&&root->right==nullptr)
        {
            vv.push_back(v);
        }
        else
        {
            dfs(root->left,target);
            dfs(root->right,target);
        }
        //这一步不能丢
        v.pop_back();
    }
    vector<vector<int>> pathSum(TreeNode* root, int target) {
        if(root==nullptr)
            return vv;
        dfs(root,target);
        return vv;
    }
};
